<template>
  <li>
		<label>
			<input type="checkbox" :checked="todoVal.done" @change="handlerCheck(todoVal.id)" />
			<!-- 如下代码能够实现功能, 但是不建议使用: 违反了vue的props不能修改的原则-->
			<!-- <input type="checkbox" v-model="todoVal.done" /> -->
			<span>{{todoVal.title}}</span>
		</label>
		<button class="btn btn-danger" @click="handlerDel(todoVal.id)">删除</button>
	</li>
</template>

<script>
export default {
  name: 'MyItem',
	props: ['todoVal', 'checkedTodo', 'delTodo'],
	methods: {
		// 勾选
		handlerCheck(id){
			this.checkedTodo(id)
		},
		// 删除
		handlerDel(id) {
			if(confirm('确认删除吗?'))
			this.delTodo(id)
		}
	}
}
</script>

<style scoped>
	/*item*/
	li {
		list-style: none;
		height: 36px;
		line-height: 36px;
		padding: 0 5px;
		border-bottom: 1px solid #ddd;
	}

	li label {
		float: left;
		cursor: pointer;
	}

	li label li input {
		vertical-align: middle;
		margin-right: 6px;
		position: relative;
		top: -1px;
	}

	li button {
		float: right;
		display: none;
		margin-top: 3px;
	}

	li:before {
		content: initial;
	}

	li:last-child {
		border-bottom: none;
	}

	li:hover{
		background-color: #ddd;
	}
	
	li:hover button{
		display: block;
	}
</style>